﻿# VISTA Link PRD 研发落地评审报告

| 项目 | 内容 |
|---|---|
| 评审对象 | VISTA_Link_产品需求文档.md |
| 评审视角 | 资深后端/全栈研发负责人 · 开发落地评审 |
| 评审目标 | 找出影响研发设计、排期、接口定义、数据建模、权限控制、测试验收与上线风险的问题 |
| 评审日期 | 2026-07-06 |
| 结论摘要 | 有条件进入技术设计；权限、AI、追踪三块须先补 PRD 再设计 |

> 说明：本报告以 PRD 明确章节为依据；标注为「待确认/待讨论」之处未作脑补，需产品补充后方可设计。

---

## 一、总体结论

这份 PRD 功能写得挺细，尤其客户、素材、分享资料、权限这四块的规则很到位，产品边界也讲清楚了。整体够格进技术设计的门，**但还不能直接排期和建表**。

主要卡在四点：

1. **核心链路依赖的东西还没定。** AI 智能体被 §8 放进了「核心链路」，可它一期的技术边界——用哪个模型、调用上限、失败怎么处理、要不要做图片/视频、AI 写数据要不要确认和留痕——一个都没定。
2. **系统边界和「要采集什么」没讲清。** §5 只写了 6 个 API 的名字，没说清 VISTA Link、展示端、外部智能体之间谁负责存什么、要互相传什么；HOMEVISTA 的行为上报也没说到底要记哪些行为。（接口字段、错误码这些是技术设计的事，PRD 可以不写。）
3. **有几条规则自己打架。** 比如「负责人」在 §4.1.3 只是个随便填的文本框，可 §4.7.4 又要拿它判断「谁能看这个客户」；再比如绑了客户的链接要求「只有这个客户能看」，但客户压根不登录系统，没法验证是不是本人。
4. **验收标准是空的（§7）。** 测试连「做到什么算完成」都没有基线。

一句话：先把这四点补上，再进技术设计。

---

## 二、高优先级问题

| 编号 | PRD 章节 | 问题描述 | 影响 | 建议补充/修改 | 优先级 |
|---|---|---|---|---|---|
| P1 | §4.1.3 / §4.7.4 / §4.7.5 | `负责人` 字段在编辑客户处定义为「选填·文本」，但数据权限「本人负责客户」、默认角色「可管理被授权的客户」均依赖负责人做判定。自由文本无法关联用户、无法驱动数据隔离。 | 数据权限无法实现；本人负责客户/授权成员整条链失效 | 负责人改为**用户引用（user_id，可多值？）**，明确赋值入口与改派规则；文本备注另设字段 | 高 |
| P2 | §4.7.4「指定成员」/§4.3.1「被授权成员」/§4.7.5「被授权」 | 三处用词，但**全文没有定义授权是如何授予的**（谁授权、在哪个界面、授权对象是客户还是分享资料还是项目）。 | 数据权限核心机制无实现依据，无法建授权关系表 | 补充授权模型：授权主体、被授权人、授权范围、授权入口与操作日志 | 高 |
| P3 | §4.3.2 / §4.3.5 | 「分享链接用生成时的分享资料快照」，但素材主体（平台 3D/样板间）内容在 HOMEVISTA 那边，VISTA Link 只有元数据。**规则没说清**：分享资料改了以后，老链接给客户看的是旧版还是新版？平台素材被上游改了，客户从老链接打开看到的是改前还是改后？这几条不定，客户到底看到什么就不确定。 | 「重新生成链接才看到新版」这类承诺可能落空；客户看到什么不可控 | PRD 里定清「快照冻结哪些内容、上游变更跟不跟」的规则；具体存成什么结构是设计的事（见 §四） | 高 |
| P4 | §5 / §10 | §5 只列了 6 个 API 名字，但**没讲清系统边界和数据责任**：VISTA Link、HOMEVISTA 展示端、外部智能体之间，谁负责存哪些数据、要互相传什么、VISTA Link 要对外开放哪些能力，都没说；也没说清哪些功能要对外暴露（客户状态、标签、营销统计、权限、AI 等模块都没提）。（注：接口字段、错误码属于技术设计，不要求 PRD 定义。） | 对接范围说不清；系统怎么拆、工作量都估不出来 | PRD 里讲清各系统的数据责任和边界、要对外开放哪些能力；接口字段留给技术设计（见 §五，作设计输入） | 高 |
| P5 | §10 / §4.5.1 | 浏览行为是产品核心价值，但 PRD 没说清**到底要记录哪些行为**（打开、看了哪个素材、停留多久、进没进比较页、预约、下载……哪些必记、哪些记不了），也没说**换设备/转发时算不算同一个人**。（上报字段、去重、重试这些是技术设计，不要求 PRD 写。） | 核心价值链说不清要采集什么，展示端没法约定上报内容 | PRD 里列清「必须记录的行为 + 记不了的情况 + 访客算不算同一人」的口径；上报字段和去重留给设计（见 §五·浏览行为） | 高 |
| P6 | §4.2.3 / §4.5.1 | 行为口径未分层：外部链接「仅记录点击，预约/下载完成默认不记录」，但 §4.5.1 浏览记录又列出「是否提交预约、下载资料」、重点行为含「预约、下载」，AI 建议示例也用「预约链接」。需要区分 HOMEVISTA 原生行为与外部链接行为。 | 行为追踪与统计口径混乱；「重点行为」实现范围不清 | 明确区分：HOMEVISTA 端原生预约/下载可记录；外部链接的完成结果不可记录（除非回传）。统计与 AI 建议只能基于可记录部分 | 高 |
| P7 | §8 / §4.4.5 / §9.2 | §8 把「AI 智能体」列入核心链路，但一期必须依赖的 AI 边界仍未定：模型供应商、调用上限、失败策略、是否包含图片/视频生成、AI 写入确认和审计。收费方式整体可不阻塞技术设计，但会影响商业上线；**唯一例外是「失败/重复生成是否计费」（§9.2 第 16 项）——它是技术与商业的交叉点，直接决定失败重试策略要不要做、做几次，不能完全后置。** | 一期范围、成本、性能和验收口径不可控；AI 图片/视频生成可能显著放大研发和运营风险 | 拆分：AI 智能体的「读取+推荐+草稿」可一期；AI 图片/视频生成、调用上限、失败策略、写入审计需先确认后再排期；「失败计费口径」需与技术方案一并确认 | 高 |
| P8 | §7 指标与验收 | 整节「待补充」，无任何验收标准；§6.6 性能用「快速打开/及时返回」等不可测量措辞。 | 测试无验收基线，无法定义「完成」 | 补充可测量的性能指标（如列表 P95、上报吞吐）与功能验收用例 | 高 |
| P9 | §2.1 / §4.7.7 / §9.1 | PRD 规定「购房客户不登录 VISTA Link」，但又规定「链接绑定了购房客户 → 仅该客户可访问」。如果客户没有登录、验证码、一次性访问码、手机号/邮箱校验或客户侧身份 token，系统无法判断打开链接的人是否为该客户。**§9.1 风险表已承认「系统无法完全确认实际浏览者身份」，这与 §4.7.7 的「仅该客户可访问」目标不闭环，必须补充身份识别机制或调整访问控制口径。** | 绑定客户链接的访问控制无法实现；如果按公开 token 访问，只能做行为归因，不能保证「仅该客户可访问」 | 明确客户侧身份识别方案；或调整规则为「绑定客户链接用于行为归因，不保证客户本人访问」。如要限制访问，需定义验证码/访问码/token 机制和客户体验 | 高 |
| P10 | §4.3.2 规则 | 去重规则说「同一分享资料+同一客户+同一分享方式已有启用链接就复用」，但**没绑客户时要不要每次新建、还是也复用**没说。这是条功能规则，不定就没法做。（怎么加唯一约束是设计的事。） | 没绑客户的场景行为不确定，可能生成一堆重复链接 | PRD 里补「没绑客户时的去重规则」；数据库约束留给设计 | 高 |
| P11 | §4.7.4 / §4.7.6 | 多角色「权限合并计算」未定义合并语义（数据范围是取并集还是取最宽？功能权限与数据权限交叉如何算）；且「公司内共享」可跨用户可见，与「仅本人/指定项目」数据范围存在覆盖关系未说清。 | 权限判定核心算法有歧义，易产生越权或漏看 | 明确合并规则（建议数据范围取并集、功能权限取并集）与共享开关对数据范围的覆盖优先级 | 高 |

---

## 三、需要产品确认的问题清单（按模块）

### 客户模块
- `负责人` 是用户引用还是文本？谁能给客户指派/改派负责人？一个客户是否可多负责人？（§4.1.3 与 §4.7.4 冲突）
- `编号` 唯一范围是租户内还是全局？编号生成规则（连续/前缀/可读性）？（§4.1.1）
- 删除客户为软删还是硬删？删除后编号是否回收、是否可恢复？（§4.1.9 只说「不再出现」）
- 客户导入去重：手机号/邮箱等均为选填，都为空时如何判重？重复行「先不导入」是否需要回执/报告？（§4.1.6）

### 素材/素材组模块
- 平台素材是否有版本号？上游内容变更时 VISTA Link 如何感知（推送/轮询/webhook）？（§4.2.1、§5）
- 素材是否会被上游下线/删除？已进入素材组/分享资料/快照的素材被下线后如何展示？（未定义）
- AI 素材制作是否一期包含图片/短视频？生成时延与失败重试对交互的影响？（§4.2.2、§4.4.5）

### 分享资料/分享链接模块
- 分享资料改了、或上游素材改了，客户从老链接看到的是哪一版？（见 P3）
- 二维码是否需服务端生成并存储、是否有重新生成机制？「重新生成链接」是否为独立操作（PRD 未出现，只有「停用+新建」）？（§4.3.2）
- 绑定客户的分享链接如何确认访问者就是该客户？是否需要验证码、访问码、手机号/邮箱校验或客户侧身份 token？如果不做身份校验，是否把规则改为「绑定仅用于归因」？（§4.7.7）
- 未绑定客户的公开链接，之后再绑定客户，历史浏览行为是否回溯归入该客户？（§4.5.1「绑定后自动归入」与 §4.1.8 解绑规则存在时序歧义）
- 分享资料含多项目素材时，用户后续失去某项目访问权限，还能否查看/使用该分享资料与其链接？（§4.7.4）

### 权限模块
- 授权/指定成员的授权模型（见 P2）。
- 多角色权限合并语义（见 P11）。
- 「公司内共享」开启是否绕过个人数据范围限制？其与「仅本人」的优先级？（§4.3.1 vs §4.7.4/§4.7.5）
- 管理员默认不含「全租户」数据权限（§4.7.6 明确管理员仍受数据权限限制）——那么初始谁能看全租户数据？由谁配置？

### AI 智能体模块
- 会话记录是否持久化？存哪些内容（用户可查看会话记录权限已存在）？保留多久？（§4.7.3 有权限但无存储定义）
- 外部智能体调用时，按哪个用户的权限来判定？（§4.4.4）
- AI 写正式数据（保存素材组/创建分享资料/生成链接）是否进操作日志？§6.5 未列 AI 动作。
- 一期 AI 边界需先确认：模型供应商、调用上限、失败策略、是否包含图片/视频生成、AI 写入确认和审计。收费方式可后置到商业上线前确认；其中失败/重复生成是否计费需与失败重试策略一并确认。

### 营销统计模块
- §4.5.2 明确标注「统计口径与展示方式待细化」——一期是否交付统计？交付哪些口径？（§8 未把统计单列，含糊）

### 分享方式
- 分享方式是固定枚举还是租户可维护？（§4.6 待确认，直接影响建模）

---

## 四、建议补充的数据模型

> **说明：本节和 §五 是给「技术设计阶段」的输入，不是要求写进 PRD。** PRD 只需把「要记录什么、要唯一、有哪些状态、删了怎么处理」这类**数据需求**讲清；至于建成什么表、什么字段、什么索引，是技术设计的事。这里列出来，一是帮技术设计少走弯路，二是拿来检验「PRD 描述的功能，是不是都有数据能兜得住」。

以下为建议的核心实体与关键设计点（字段名示意，最终以设计为准）。

**tenant（租户）** —— 只读同步自 VISTA ADMIN。`tenant_id`、`default_language`、`default_timezone`。

**project（项目）** —— 只读同步。`project_id`、`tenant_id`、`name`、`status`。需明确同步机制与素材版本。

**user（用户）** —— 只读同步 + 本地权限。`user_id`、`tenant_id`、`status(启用/停用)`、`roles[]`、`accessible_projects[]`。

**role / permission** —— 建议按对象分别配数据范围，别用一个 `data_scope` 字段管所有东西。示意：`role_id`、`tenant_id`、`is_default`、`function_permissions[]`、`data_scopes[{object_type, scope_type, scoped_projects[], scoped_members[]}]`。因为客户看负责人、素材看项目、分享资料看「是否含全部素材」，规则各不一样，用一个范围一刀切容易越权或漏看。

**customer（客户）**
- 字段：`customer_id`、`tenant_id`、`code(唯一, 建议 unique(tenant_id,code))`、`name`、`owner_user_id(负责人, 引用)`、`creator_user_id`、`status_id`、`source`、`intent(text)`、`remark`、`contacts{...}`、`created_at`、`last_activity_at(仅由浏览行为更新)`、`deleted_at(软删)`。
- 删除策略：**软删**（保留与链接的历史关系用于统计）；状态流转：引用租户状态列表。审计：创建/删除记操作人时间（§6.5）。

**customer_tag / material_tag（标签，两套独立）** —— `tag_id`、`tenant_id`、`name(租户内唯一)`、`usage_count`。删除：仅未使用可删；合并：需事务改写关联并去重（§4.1.5/§4.2.5）。

**customer_status（客户状态字典）** —— `status_id`、`tenant_id`、`name`、`sort`、`is_default`、`is_active(停用不删)`。已使用不可删（§4.1.4）。

**material（素材）** —— `material_id`、`tenant_id`、`project_id(必属项目)`、`source(平台/外部链接/AI生成)`、`category`、`type`、`name`、`url(外部链接)`、`is_ai_generated`、`platform_version?`、`updated_at`、`status(在线/下线)`。平台素材内容不落库，仅元数据+引用。

**material_group（素材组）** —— `group_id`、`tenant_id`、`creator_user_id`、`name`、`remark`、`material_ids[](有序)`。不含项目字段。删除软删+审计（§6.5）。

**share_doc（分享资料）** —— `doc_id`、`tenant_id`、`creator_user_id`、`name`、`remark`、`internal_share(bool)`、`template_id`、`material_items[](素材id+顺序+素材说明)`、`state(正常/已删除)`、`updated_at`。软删（删除后链接仍可访问，需保留）。

**share_doc_snapshot（分享资料快照）** —— `snapshot_id`、`doc_id`、`content(结构化: 素材引用+版本+顺序+模板+说明)`、`created_at`。每次生成链接时冻结（P3 待确认粒度）。

**share_link（分享链接）** —— `link_id`、`doc_id`、`snapshot_id`、`token(公开访问用)`、`name`、`share_method`、`customer_id(可空)`、`access_mode(public/customer_verified?)`、`creator_user_id`、`status(启用/停用)`、`qr_ref`、`created_at`、`last_visited_at`。**不可删除，仅停用**（§4.3.3）。去重约束待定（P10）；绑定客户访问控制机制待定（P9）。

**share_link_access_challenge（可选，若要求绑定客户仅本人访问）** —— `challenge_id`、`link_id`、`customer_id`、`verify_method(sms/email/code/token)`、`expires_at`、`verified_at`、`visitor_id`。如产品不要求身份校验，则不建此表，绑定客户只用于行为归因。

**link_customer_binding（可选，若支持解绑历史）** —— 记录绑定/解绑历史，支撑「解绑后行为不再出现在客户追踪、但链接侧保留」（§4.1.8）。

**visit_event（浏览行为）** —— `event_id`、`link_id`、`visitor_id`、`event_type(open/view_material/dwell/compare/reserve/download...)`、`material_id?`、`dwell_ms?`、`referer`、`occurred_at`、`idempotency_key`。幂等键防重复上报（P5）。

**ai_conversation / ai_action_log** —— 会话与 AI 写操作审计（§4.7.3 会话记录权限、§6.5 需覆盖 AI 写入）。

**audit_log（操作日志）** —— `actor`、`action`、`target_type/id`、`at`，覆盖成员/角色/项目范围/状态/标签/删除等（§6.5）。

### 删除 / 快照 / 保留策略汇总
- **软删除对象**：客户、素材组、分享资料。
- **快照对象**：分享链接（快照分享资料内容）。
- **只停用不删**：分享链接、客户状态、用户、素材（下线）。
- **必须保留历史**：浏览行为、分享链接（含解绑后）。

---

## 五、建议补充的接口清单

> **说明：本节是给「技术设计阶段」的输入，不是要求写进 PRD。** 接口怎么定义、传什么字段、返回什么、错误码——这些都是设计的事，PRD 不用写。这里列出来，是为了检验「PRD 描述的功能，是不是都有对应能力支撑」，也给技术设计当起点。

以下每个接口**建议在技术设计时**补齐：用途 / 关键入参 / 关键出参 / 权限点（功能权限+数据范围）/ 错误码 / 分页 / 幂等。

| 模块 | 接口（建议） | 用途 | 关键入参 | 关键出参 | 权限点 |
|---|---|---|---|---|---|
| 客户 | `GET /customers` | 列表/搜索/标签筛选 | name、tag_ids、status、分页、sort=last_activity | 列表(姓名/编号/标签/最近活动) | 查看客户 + 数据范围 |
| 客户 | `POST /customers` `PUT /customers/{id}` `DELETE /customers/{id}` | 增改删（删=软删+二次确认标记） | 见 §4.1.2/4.1.3 字段 | customer_id、code | 创建/编辑/删除客户 + 数据范围 |
| 客户 | `POST /customers/import` `GET /customers/export` | 导入(CSV预检)/导出(当前筛选) | file、default_source；筛选条件 | 校验结果/重复行/导入数 | 导入/导出客户 |
| 客户 | `DELETE /customers/{id}/links/{linkId}` | 解绑客户与分享链接 | — | — | 编辑客户 + 数据范围 |
| 客户标签 | `GET/POST/PUT /customer-tags`、`POST /customer-tags/merge`、`DELETE` | 维护/合并/删除 | name、target_tag_id | usage_count | 使用/新增/维护标签库 |
| 客户状态 | `GET/POST/PUT /customer-statuses`、排序、设默认、停用 | 维护状态字典 | name、sort、is_default | — | 维护状态列表 |
| 素材 | `GET /materials`（=素材目录 API） | 已上线素材+标签+属性 | project_id、category、type、tag_ids、name | 素材列表+标签 | 查看素材 + 指定项目 |
| 素材 | `POST /materials/external-link` `PUT` | 添加/修改外部链接 | name、project_id、url、说明、tags | material_id | 添加外部链接 + 项目范围 |
| 素材 | `POST /materials/ai-generate` `POST /materials/ai-confirm` | AI 生成草稿/确认入库 | project_id、type、prompt、reference_ids | 草稿、名称/分类/标签建议 | 制作素材（图/视频待确认） |
| 素材标签 | 同客户标签一套 | 维护/合并/删除 | — | usage_count(素材数) | 使用/新增/维护 |
| 素材检索 | `POST /materials/search` | 按客户/描述/标签匹配 | customer_id 或 描述 或 tag_ids | 素材结果+标签+推荐理由 | 查看素材 + 项目范围 |
| 素材组 | `GET/POST/PUT/DELETE /material-groups`（=素材组 API） | 增删改查、移除素材 | name、material_ids、remark | group_id | 素材组管理 + 全部素材可访问 |
| 分享资料 | `GET/POST/PUT/DELETE /share-docs`、`POST /share-docs/{id}/copy`、`PUT internal-share` | 创建/复制/编辑/删除/共享开关 | material_items、name、template、internal_share | doc_id | 分享资料管理 + 全部素材可访问 |
| 分享链接 | `POST /share-links`（=分享链接 API） | 生成链接（冻结快照） | doc_id、share_method、customer_id? | link_id、token、qr | 生成分享链接 + 数据范围 |
| 分享链接 | `PUT name`、`PUT status(停用/启用)`、`GET /{id}/visits` | 改名/停用/访问记录 | — | 访问记录 | 修改名/停用/查看访问记录 |
| 分享链接 | `POST /share-links/{id}/share` | 选分享方式取链接/二维码（含复用/新建逻辑） | share_method | link/qr | 分享 |
| 分享链接访问 | `GET /s/{token}`、`POST /s/{token}/verify`（可选） | 客户打开分享链接；如绑定客户且要求仅本人访问，则执行验证码/访问码/token 校验 | token、verify_code?、visitor_id? | 分享资料快照或失效/待验证提示 | token 鉴权；绑定客户访问控制待确认 |
| 浏览行为 | `POST /track/events`（上报 API） | HOMEVISTA 端上报事件 | token、visitor_id、event_type、material_id、dwell、occurred_at、idempotency_key | ack | 无登录态，token 鉴权，需幂等 |
| 浏览行为 | `GET /visits`（=行为数据 API） | 按客户/链接查行为 | customer_id 或 link_id、时间范围 | 事件列表+摘要 | 查看客户追踪 + 数据范围 |
| 营销跟进 | `GET /customers/{id}/tracking`、`GET /stats` | 客户追踪 / 营销统计 | 客户id；按时间/项目/资料/链接/方式维度 | 摘要、AI建议、统计口径 | 查看客户追踪/营销统计 + 数据范围 |
| AI 智能体 | `POST /agent/messages`、`GET /agent/conversations` | 会话式动作、会话记录 | conversation_id、消息、上下文对象 | 卡片草稿、确认提示 | 使用智能体（继承登录用户权限） |
| 权限/角色 | `GET/POST/PUT/DELETE /roles`、`PUT /members/{id}/roles`、`PUT /members/{id}/projects` | 角色权限、成员角色/项目范围 | function_perms、data_scopes、project_ids | — | 角色/权限/项目范围配置（管理员） |

**幂等重点**：`/track/events`（idempotency_key）、`/share-links` 生成（去重约束）、导入。
**错误码**：需统一定义无权限/越权、快照失效、链接停用、标签重名、状态已使用等。

---

## 六、一期开发范围建议

### 一期就做（大体清晰，能凑成最小可用闭环）
- 账户/角色/功能权限/数据权限骨架（要先把 P1/P2/P11 确认了才动手）
- 客户管理：列表/增改删（软删）/详情/导入导出/标签/状态字典（§4.1）
- 素材管理：素材目录读取、外部链接、标签、检索、素材组（§4.2；AI 图片/视频生成放二期，纯文本 AI 生成是否一期待产品定）
- 分享资料：创建/编辑/复制/删除/公司内共享/快照（§4.3）
- 分享链接：生成/命名/分享方式/二维码/停用/访问记录（§4.3.2-4.3.3）
- 浏览行为上报与客户追踪（行为记录 + 行为摘要非 AI 部分）（§4.5.1）
- 操作日志、多语言框架、时区、数据隔离（§6）

### 放到二期
- AI 素材制作中的**图片/短视频生成**（成本高、慢、还有合规风险）
- 营销统计完整口径（§4.5.2 自标「待细化」）
- 分享方式真实发送接入（§4.6）
- 外部智能体 API/MCP 完整开放（内部智能体先行）
- 销售经理/管理层角色与汇报数据（§9.2 待讨论 2、7）

### 得先确认才能排期
- AI 一期做到哪：用哪个模型、调用上限、失败怎么处理、要不要图片/视频、写数据要不要确认和留痕 → 决定 AI 一期是只做「推荐+草稿」还是整个延后
- 「负责人」到底是什么 + 授权/指定成员怎么授权（P1、P2）→ 决定权限能不能开工
- 快照存什么 + 平台素材有没有版本机制（P3）→ 决定分享资料/链接怎么建表
- 行为上报要记哪些事件、哪些记不了（P5）→ 决定核心链路能不能联调
- 外部链接和原生预约/下载，哪些能记哪些不能（P6）→ 决定行为和统计的范围
- 绑客户的链接怎么确认打开的是本人（P9）→ 决定「仅该客户可访问」能不能做，还是只能改成「用于归因」

---

## 七、研发评审结论

- **能不能进技术设计？** 有条件能。客户、素材、分享资料这三块相对最成熟，可以最先动手——但也不是零障碍：客户得先把「负责人」定下来（P1），分享资料得先把「快照存什么」定下来（P3）。权限、AI、行为上报这三块问题更集中，得先补 PRD 再设计，不然一定返工。
- **要不要先补 PRD？** 要。现在 §5 的系统边界/数据责任没讲清、§7 验收还是空的，加上前面几条规则打架，直接排期会踩坑。
- **产品最少补齐下面这些，才能整体估排期：**
  1. 「负责人」到底是什么、授权/指定成员怎么授权（P1、P2）；
  2. 多角色权限怎么合并、「公司内共享」和数据范围谁说了算（P11）；
  3. 分享资料快照存什么、平台素材有没有版本/下线机制（P3）；
  4. 行为上报要记哪些事件、哪些记不了、换设备转发算不算同一人，以及预约/下载哪些能记（P5、P6）；
  5. 绑客户的链接怎么确认是本人；不做校验就把「仅该客户可访问」改成「只用于归因」（P9）；
  6. AI 一期做到哪（模型、调用上限、失败处理、要不要图片/视频、写数据要不要确认和留痕）（P7）；
  7. §5 讲清系统边界和数据责任、补上 §7 验收标准（P4、P8）。
